package common.properties {
/**
 * Used for HasProperties objects.
 * Describes how properties are read and written.
 */
public interface PropertyAccessor {
    /**
     * read property value from object
     * @param obj object to read property from
     * @return value of property
     */
    function getValue(obj:HasProperties):Object;

    /**
     * writes property value to object
     * @param obj object to write property to
     * @param value value to write
     */
    function setValue(obj:HasProperties, value:Object):void;
}
}